Whereas conventional 2G mobile networks, such as those conforming to the Global System for Mobile Communications (GSM) standards, have provided circuit-switched voice and data services to user's mobile stations (MSs), there is great momentum in the mobile telecommunications industry to deploy packet-switched mobile networks. Packet-switched mobile networks have significant advantages in terms of network and resource efficiency and also enable the provision of more advanced user services. With the convergence of fixed and mobile telecommunications networks, the Internet Protocol (IP), widespread in fixed networks, is the natural choice as the packet routing mechanism for mobile packet networks. Currently IP version 4 (IPv4) is in widespread use in the fixed network domain. However, it is expected gradually to migrate to IP version 6 (IPv6) which offers well-recognised benefits over IPv4, notably in terms of greatly increased address space, more efficient routing, greater scalability, improved security, Quality of Service (QoS) integration, support for multicasting and other features.
Particular examples of mobile packet-switched services currently being deployed include the General Packet Radio Service (GPRS) as implemented in both 2G GSM networks and in 3G Universal Mobile Telecommunications System (UTMTS) networks (hereinafter referred to as GPRS networks). It is also expected that non-GPRS wireless access technologies, such as wireless Local Area Network (wLAN), will provide a flexible and cost-effective complement to GPRS for local broadband service access in some areas such as hotspots (conference centres, airports, exhibition centres, etc). Consequently mobile network operators will want to support roaming of mobile stations between GPRS and non-GPRS networks or subnetworks.
The reader is referred to the GPRS Service Description (release 1999) Technical Specification, referred to as 3G TS 23.060 v3.12.0 (2002-06) and available from the 3GPP website at http://www.3gpp.org/ftp/specs/2002-06/R1999/23_series1, which provides a detailed service description for 2G (GPRS/GSM) and 3G (GPRS/UMTS) mobile packet networks. The functionality of GPRS networks is also generally well known, although further aspects will be described in detail below.
In order to access GPRS packet-switched services, a MS first performs a GPRS attach procedure with an SGSN (either a 2G GSM GPRS attach or a 3G UMTS GPRS attach). Authentication, and location updating procedures are performed, and, if successful, the GPRS attach procedure makes the MS available for paging via the SGSN and notification of incoming packet data. However, to actually send and receive packet data, the MS must have an allocated Packet Data Protocol (PDP) address (e.g. an IP address) and must activate at least one PDP context for use with that PDP address. Each PDP address for a MS may have one or more PDP contexts associated with it and data defining the PDP contexts is stored in the MS, the SGSN, and the GGSN. The process of PDP context activation makes the MS known not only to the SGSN, but also to the corresponding GGSN and inter-working with external data networks can commence.
While GPRS networks, having been designed from the start as mobile networks, have built-in mobility management (for MSs within the GPRS network) and roaming functionality (for MSs roaming between GPRS networks), work has also taken place in the Internet Engineering Task Force (IETF) to support mobility of IP user terminals in general. To this end, the IETF have developed the Mobile IP (MIP) protocols. MIP is designed to support mobility when mobile stations (or mobile nodes (MNs) in MIP terminology) move between IP networks with different subnet prefixes (macro-mobility). For example, MIP may be used to support mobility between a GPRS network and a non-GPRS network such as a wLAN network. Mobile IP is not expected to be used for mobility management within a network or subnetwork (micro-mobility) which is typically managed by access technology specific layer 2 mechanisms such as WCDMA handover.
There are two versions of MIP to correspond to the two versions of IP. MIP version 4 (MIPv4) is designed to provide IP address mobility for IP version 4 (IPv4) addresses, whereas the newer MIP version 6 (MIPv6) MIP is designed to provide IP address mobility for IP version 6 (IPv6) addresses. MIPv4 is described in the IETF Request For Comment (RFC) 2002 available at the IETF website http://www.iet.org/rfc/rfc2002.ttxt?number=2002. Internet draft MIPv6 is described in the IETF Internet draft “Mobility Support in IPv6” available at the time of writing on the IETF website at http://www.ietf.org/internet-drafts/draft-ietf-mobileip-ipv6-24.txt and referenced as draft-ietf-mobileip-ipv6-24.txt, dated 30 Jun. 2004.
A scenario involving MIP roaming with routing optimisation is illustrated in FIG. 1. A mobile node (MN) is allocated a home IP address (HAddr) in its Home Network (HN). Routing procedures in the HN ensure that wherever the MN is within the HN, an IP packet sent from a Correspondent Node (CN) over an IP network (IPN) will reach the MN. When the MN roams to a foreign network (FN), the MN is assigned a Care of Address (CoA) within the FN to which IP packets will need to be routed. However, the roaming must be transparent to the IP layer during a session, so that packets created by the IP layer of the CN will continue to carry the HAddr as the destination address.
Under the MIPv6 route optimisation protocol, the MN sends a binding update to the CN when roaming into the FN, to inform the CN of the CoA. The MIP layer of the CN then sets the destination address of subsequent packets in the session to the CoA, and places the HAddr in a Routing Header Type 2 extension header of the packet. At the MN MIP layer, the HAddr is retrieved from the Routing Header Type 2 extension header and used as the destination address in the corresponding packet passed to the IP layer.
Route optimisation is mandatory in MIPv6, but does not form part of MIPv4. An alternative roaming protocol without route optimisation is shown in FIG. 2. An IP session is set up between the CN and the MN in its HN. The MN roams into the FN during the session, and sends a binding update to inform a Home Agent (HA) in the HN of the CoA in the FN. The HA forms part of a gateway between the IPN and the HN. In this example, the FN is a GPRS network connected to the IPN through a GGSN.
In response to the binding update, the HA sets up an IP tunnel to the CoA by intercepting any subsequent packets with the HAddr as the destination address and encapsulating them in packets with the IP address of the HA (HAAddr) set as the source address and the CoA of the MN set as the destination address. The MIP layer of the MN decapsulates the packets and passes them to the IP layer so that the roaming is transparent to the IP layer. This tunnelling may be achieved using IPv6 Generic Packet Tunnelling Mechanism described in IETF RFC 2473.
In the uplink direction, the MN may not need to change the source and destination address of its packets after roaming into the FN, because the IP address of the CN has not changed. However, the FN may need to apply ingress filtering to outgoing packets, so that any packets with a source address not within the FN are blocked. This may be implemented by a gateway with a packet classifier to check the network prefix of the source address set to match that of the FN. As a result, packets from the MN, bearing the HAddr as the source address with a network prefix different from that of the FN, would be blocked.
To address this problem, the MIPv4 and MIPv6 standards include a reverse tunnelling protocol in which the MN sets up a tunnel in the uplink direction between its CoA and the HAAaddr. Since the uplink packets are encapsulated in packets carrying the CoA as the source address, and the CoA is within the FN, the ingress filter will allow the encapsulated packets to pass. The HA decapsulates the packets and forwards them to the CN. MIPv6 reverse tunnelling is described for example in the IETF Mobile IP Working Group Draft ‘Mobility Support in IPv6’, 29 Oct. 2002, located at the time of writing at http://www.iet.org/internet-drafts/draft-ietf-mobileip-ipv6-24.txt
In IPv4, the number of possible IP addresses is limited and it is therefore not desirable to allocate a unique CoA to each MN roaming in a FN. The MIPv4 standard therefore allows multiple MN's to share a CoA allocated to a Foreign Agent (FA) within the FN. FIG. 3 shows the use of an FA in MIPv4. Packets are tunnelled between the HA and the FA at the CoA, and the FA routes the packets to the MN within the FN.
It is generally accepted that access to a network should be under the control of the operator or service provider of that network. Many important 3G functions, such as Service-Based Local Policies (SBLP) are based on this network-centric control principle. However, the existing MIPv6 standards work on an end-to-end basis that does not involve individual networks. For example, the MN interacts with its HA and its CN without notifying its current network, such as the foreign or visited network, that it is being camped on. The end-to-end control model of MIPv6 will be broken if foreign or visited networks enforce local policies.